package br.org.fatec.inter.util;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

/**
 * Classe que simplifica a interação com o banco de dados
 * @author bancada
 */
public class DBManager {

    /**
     * Esse metodo executa uma instrução <b>SQL</b> tipo <b>UPDATE / INSERT / DELETE</b>
     * @param connection Uma conexão com o banco já realizada
     * @param sql A instrução SQL a ser executada
     * @param valores os valores que vão ser usados pela instrução * <br><br>
     * Exemplo: Inserindo Aluno na tabela alunos <br><br> 
     * String <b>SQL:</b> <br> 
     * insert into alunos(nome,idade,serie) values (?,?,?)<br> <br> 
     * Chamada ao metodo: <br>
     * executarQuery(conexao, SQL, "Lincoln", "24", "1");<br>
     * @return <b> True </b> caso tenha executado com sucesso e <b> False </b>
     * do contrario
     * @throws SQLException
     *
     */
    public static boolean executarQuery(Connection connection, String sql, String... valores) throws SQLException {
        if (connection == null) {
            throw new SQLException("Problema com a conexao com o banco");
        }
        PreparedStatement ps = connection.prepareStatement(sql);
        for (int i = 0; i < valores.length; i++) {
            ps.setString(i + 1, valores[i]);
        }
        if (ps.executeUpdate() >= 1) {
            return true;
        } else {
            return false;
        }
    }

    
}
